Efficient processing and monitoring of data is becoming increasingly important as businesses, governments, entities and individuals store and/or require access to growing amounts of data. This data is often stored in databases.
As one example, business growth and technology advancements have resulted in growing amounts of enterprise data. In order to gain valuable business insight and competitive advantages, real-time analytics on such data must be performed. Real-time analytics, however, involves expensive query operations which may be time consuming on traditional CPUs. Additionally, in traditional database management systems (DBMS), CPU resources are dedicated to transactional workloads.
Traditional approaches to real-time analytics have focused on creating snapshots of data in a database to perform analytics or offloading expensive real-time analytics query operations to a co-processor to allow for execution of analytics workloads in parallel with transactional workloads.